package com.max.common.task;

/**
 * 
 * 项目名称:max-project-graphics
 * 文件名称:QryTaskObj.java
 * 文件描述:
 * 创建人员:chenyibo
 * 创建时间:2013-1-29 下午03:08:59
 * 修改人员:chenyibo
 * 修改时间:2013-1-29 下午03:08:59
 * 修改备注:
 * @version V1.0
 */
public class QryTaskObj
{
    /**
     * 任务显示名称
     */
    private String taskName = "";

    /**
    * 任务类类全名
    */
    private String className = "";

    /**
    * 任务运行（计划）标识
    */
    private boolean runFlag;

    /**
    * 任务独立运行（在线程中）标识
    */
    private boolean separateFlag;

    /**
    * 任务重复运行标识
    */
    private boolean repeatFlag;

    /**
     * 任务被监控标识
     */
    private boolean monitorFlag;

    /**
     * 任务运行在后台标识
     */
    private boolean daemonFlag;

    /**
     * 具体任务是否正在执行中标识
     */
    private boolean executingFlag;

    /**
     * 任务是否被删除（cancel）标识
     */
    //private boolean cancelFlag;

    /**
     * 任务运行的开始时间
     */
    private String startTime = "";

    /**
     * 任务运行的间隔时间（单位：分）
     */
    private long intervalTime = 0;

    /**
     * 任务运行的最可长运行时间（单位：分）
     */
    private long maxRunTime = 0;

    /**
     * 具体任务执行的最后一次开始时间
     */
    private String lastRunTime = "";

    /**
     * 获取任务类全名
     * @return className  任务类全名
     */
    public String getClassName()
    {
        return className;
    }

    /**
     * 设置任务类全名
     * @param aClassName 任务类全名
     */
    public void setClassName(String aClassName)
    {
        this.className = aClassName;
    }

    /**
     * 获取任务显示名称
     * @return taskName 任务显示名称
     */
    public String getTaskName()
    {
        return taskName;
    }

    /**
     * 设置任务显示名称
     * @param aTaskName 任务显示名称
     */
    public void setTaskName(String aTaskName)
    {
        this.taskName = aTaskName;
    }

    /**
     * 获取任务开始时间
     * @return 任务开始时间
     */
    public String getStartTime()
    {
        return startTime;
    }

    /**
     * 设置任务开始时间
     * @param aStartTime  开始时间
     */
    public void setStartTime(String aStartTime)
    {
        this.startTime = aStartTime;
    }

    /**
     * 获取任务运行间隔时间
     * @return 任务运行间隔时间
     */
    public long getIntervalTime()
    {
        return intervalTime;
    }

    /**
     * 设置任务运行间隔时间
     * @param aIntervalTime  运行间隔时间
     */
    public void setIntervalTime(long aIntervalTime)
    {
        //是否要判定间隔时间大于最大运行时间？
        this.intervalTime = aIntervalTime;
    }

    /**
     * 获取任务的最长运行时间（单位：分钟）
     * @return 任务的最长运行时间 （单位：分钟）
     */
    public long getMaxRunTime()
    {
        return this.maxRunTime;
    }

    /**
     * 设置任务的最长运行时间（单位：分钟）
     * @param aMaxRunTime 任务的最长运行时间   （单位：分钟)
     */
    public void setMaxRunTime(long aMaxRunTime)
    {
        //是否要判定间隔时间大于最大运行时间？
        this.maxRunTime = aMaxRunTime;
    }

    /**
     * 获取任务的最后一次开始运行时间
     * @return 最后一次开始运行时间
     */
    public String getLastRunTime()
    {
        return this.lastRunTime;
    }

    /**
     * 设置任务的最后一次开始运行时间
     * @param aLastRunTime  最后一次开始运行时间
     */
    public void setLastRunTime(String aLastRunTime)
    {
        this.lastRunTime = aLastRunTime;
    }

    /**
     * 设置运行标识
     * @param aRunFlag 运行标识
     */
    public void setRunFlag(boolean aRunFlag)
    {
        this.runFlag = aRunFlag;
    }

    /**
     *  是否在运行中
     * @return boolean
     */
    public boolean isRun()
    {
        return this.runFlag;
    }

    /**
     * 设置监控标识
     * @param aMonitorFlag 监控标识
     */
    public void setMonitorFlag(boolean aMonitorFlag)
    {
        this.monitorFlag = aMonitorFlag;
    }

    /**
     *  是否要监控
     * @return boolean
     */
    public boolean isMonitor()
     {
         return monitorFlag;
     }

     /**
      * 设置是否要在后台运行（守护线程中）
      * @param aDaemonFlag 后台运行标识
      */
     public void setDaemonFlag(boolean aDaemonFlag)
     {
         this.daemonFlag = aDaemonFlag;
     }

     /**
      *  是否在后台运行（守护线程内）
      * @return boolean
      */
     public boolean isDaemon()
     {
         return daemonFlag;
     }

     /**
      * 设置是否要独立独立
      * @param aSeparateFlag 独立运行标识
      */
     public void setSeparateFlag(boolean aSeparateFlag)
     {
         this.separateFlag = aSeparateFlag;
     }

    /**
     * 是否在独立线程内(Timer对象)
     * @return boolean
     */
    public boolean isSeparate()
    {
        return separateFlag;
    }

    /**
     * 设置重复运行
     * @param aRepeatFlag 重复运行标识
     */
    public void setRepeatFlag(boolean aRepeatFlag)
    {
        this.repeatFlag = aRepeatFlag;
    }

    /**
     * 是否要重复运行
     * @return boolean
     */
    public boolean isRepeat()
    {
        return repeatFlag;
    }

    /**
     * 设置实际具体任务正在运行
     * @param aExecutingFlag 实际具体任务正在运行标识
     */
    public void setExecutingFlag(boolean aExecutingFlag)
    {
        this.executingFlag = aExecutingFlag;
    }

    /**
     * 实际具体任务是否正在运行当中
     * @return boolean
     */
    public boolean isExecuting()
    {
        return executingFlag;
    }
   
}